<!DOCTYPE html>
<html lang="zh-CN">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    class SingleTon {
      // 私有属性
      static #instance = undefined

      // 静态方法 获取单例对象
      static getInstance() {
        // console.log(this)// SinleTon类
        // 如果 #instance 没有 创建一个新的 再返回
        if (this.#instance === undefined) {
          this.#instance = new SingleTon()
        }
        // 如果 #instance 有 返回
        return this.#instance
      }
    }

    const s1 = SingleTon.getInstance()
    const s2 = SingleTon.getInstance()
    const s3 = SingleTon.getInstance()
    // console.log(s1 === s2)//true
    console.log(s2 === s3)//true
  </script>
</body>

</html>